package com.nado.extensions.util;

import java.util.List;

/**
 * {@link DomainMap}을 일반 Map으로 변환하기 위해 사용되는 유틸리티 인터페이스.
 * <p/>
 * DomainMap은 하나의 필드에 다수의 값을 포함할 수 있으며, 일반 Map으로 변화하기 위해서는
 * 이 값들을 하나의 값으로 변환하는 코드가 필요하다. 사용자는 ObjectAppender를 구현하여
 * 다음과 같이 DomainMap을 일반 HashMap으로 변환할 수 있다.
 * <p/>
 * {@link DomainMap#convert(ObjectAppender)} or {@link DomainMap#convert(java.util.Map,ObjectAppender)}
 *
 * @see StringAppender
 *
 */
public interface ObjectAppender<T> {

	/**
	 * List로 제공된 다수의 객체를 하나로 만든다.
	 */
	T append(List<T> objects);
}
